//
//  Emoticon.swift
//  表情键盘
//
//  Created by 耐克了解了 on 12/4/17.
//  Copyright © 2017年 耐克了解了. All rights reserved.
//

import UIKit

class Emoticon: NSObject {

    //定义属性
    //普通表情对应的表情
    var code : String?{
        didSet{
            guard let code = code else {
                return
                
            }
            //创建扫描器
            let scanner = Scanner(string : code)
            
            
            //调用方法，扫描餐补code中的值
            var value : UInt32 = 0
            scanner.scanHexInt32(&value)
            
            //将value转成字符串
            let c = Character(UnicodeScalar(value)!)
            
            //将字符转换成字符串
            emoticonCode = String(c)
        }
    }
    
    //普通表情对应的图片名字
    var png : String?{
        didSet{
            guard let png = png else {
                return
            }
            //拼接图片全路径
            pngPath = Bundle.main.bundlePath + "/Emoticons.bundle/" + png
        }
    }
    
    //普通表情对应的文字
    var chs : String?
    
    //MARK: - 数据处理图片全路径
    var pngPath :String?
   
    //MARK: - 数据处理图片全路径
    var emoticonCode :String?
    
    var isRemove : Bool = false
    
    var isEmpty : Bool = false
    
    
    //自定义构造函数
    init(dict : [String : String]) {
        super.init()
        
        setValuesForKeys(dict)
    }
    
    init(isRemove : Bool) {
        
        self.isRemove = isRemove
    }
    
    init(isEmpty : Bool) {
        
        self.isEmpty = isEmpty
    }
    
    override func setValue(_ value: Any?, forUndefinedKey key: String) {
        
    }
    
    override var description: String{
        return dictionaryWithValues(forKeys: ["emoticonCode","pngPath","chs"]).description
    }
}
